package com.commerce.product.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.commerce.common.entity.Product;
import com.commerce.common.utils.PageResult;

import java.util.List;

public interface ProductService extends IService<Product> {
    
    /**
     * 分页查询商品列表
     */
    PageResult<Product> getPageList(int page, int size, Long categoryId, Long[] brandIds,
                                    Integer minPrice, Integer maxPrice, String keyword,
                                    Integer isHot, Integer isNew, String sort);
    
    /**
     * 根据ID获取商品详情
     */
    Product getProductById(Long id);
    
    /**
     * 添加商品
     */
    Long addProduct(Product product);
    
    /**
     * 更新商品
     */
    boolean updateProduct(Product product);
    
    /**
     * 删除商品
     */
    boolean deleteProduct(Long id);
    
    /**
     * 获取热销商品
     */
    List<Product> getHotProducts(int limit);
    
    /**
     * 获取新品
     */
    List<Product> getNewProducts(int limit);
    
    /**
     * 获取推荐商品
     */
    List<Product> getRecommendProducts(int limit);
} 